deterministic finite automaton a*b*c*